<?php

namespace App\Providers;

use Illuminate\Support\ServiceProvider;

class LogicServiceProvider extends ServiceProvider
{
    /**
     * Bootstrap the application services.
     *
     * @return void
     */
    public function boot()
    {
        //
    }

    /**
     * Register the application services.
     *
     * @return void
     */
    public function register()
    {
        $contractsSpace = 'App\LogicService\Contracts';
        $implementSpace = 'App\LogicService';
        $this->app->singleton($contractsSpace . '\SamGlucoseLogicContract', $implementSpace . '\SamGlucoseLogic');
        $this->app->singleton($contractsSpace . '\BloodEventLogicContract', $implementSpace . '\BloodEventLogic');
        $this->app->singleton($contractsSpace . '\BloodDietLogicContract', $implementSpace . '\BloodDietLogic');
        $this->app->singleton($contractsSpace . '\UserFriendsLogicContract', $implementSpace . '\UserFriendsLogic');
        $this->app->singleton($contractsSpace . '\UserGroupLogicContract', $implementSpace . '\UserGroupLogic');
        $this->app->singleton($contractsSpace . '\MedicalComplicationAuxiliaryLogicContract', $implementSpace . '\MedicalComplicationAuxiliaryLogic');
        $this->app->singleton($contractsSpace . '\MedicalComplicationLogicContract', $implementSpace . '\MedicalComplicationLogic');
        $this->app->singleton($contractsSpace . '\MedicalComplicationPromptLogicContract', $implementSpace . '\MedicalComplicationPromptLogic');
        $this->app->singleton($contractsSpace . '\UserGroupMemberLogicContract', $implementSpace . '\UserGroupMemberLogic');
        $this->app->singleton($contractsSpace . '\MedicalComplicationPromptLogicContract', $implementSpace . '\MedicalComplicationPromptLogic');
        $this->app->singleton($contractsSpace . '\OphthalmologyMacularEdemaLogicContract', $implementSpace . '\OphthalmologyMacularEdemaLogic');
        $this->app->singleton($contractsSpace . '\OphthalmologyOrdinaryLogicContract', $implementSpace . '\OphthalmologyOrdinaryLogic');
        $this->app->singleton($contractsSpace . '\OphthalmologyRetinopathyLogicContract', $implementSpace . '\OphthalmologyRetinopathyLogic');
        $this->app->singleton($contractsSpace . '\OphthalmologyFundusChangeLogicContract', $implementSpace . '\OphthalmologyFundusChangeLogic');
        $this->app->singleton($contractsSpace . '\MedicalRecordLogicContract', $implementSpace . '\MedicalRecordLogic');
        $this->app->singleton($contractsSpace . '\HospitalLogicContract', $implementSpace . '\HospitalLogic');
        $this->app->singleton($contractsSpace . '\HospitalManageLogicContract', $implementSpace . '\HospitalManageLogic');
        $this->app->singleton($contractsSpace . '\DicTagLogicContract', $implementSpace . '\DicTagLogic');
        $this->app->singleton($contractsSpace . '\BloodGlucoseContrastLogicContract', $implementSpace . '\BloodGlucoseContrastLogic');

    }
}
